#include "DSU.hpp"
#include "tools.hpp"
#include <cstdio>
#include <vector>

int main()
{
    auto& ansi = lxj::OpenANSI::instance();
    ansi.set_mode(1).set_color(76);
    lxj::Time time;
    auto&     random = lxj::Random<int>::instance();

    std::vector<std::vector<int>> graph{{1, 1, 0, 0}, {1, 1, 1, 0}, {0, 1, 1, 0}, {0, 0, 1, 1}};
    std::vector<int>              initial{0, 1};
    auto ans = lxj::MinimizeMalwareSpreadII().minMalwareSpread(graph, initial);
    std::printf("%d", ans);

    std::puts("");
    return 0;
}